#include "stdafx.h" 是干吗的

来源:百度知道 编辑:UC知道 时间:2024/06/03 08:22:04
#include "stdafx.h" 表示了哪一类函数阿?
还有书上一模一样的小程序 前面写的#include<stdio.h>
我照样输入到visual studio中就报错,一定要改成#include "stdafx.h"才能运行 这2个有什么区别阿.?
问题实在很白痴 但我编程一点不会 希望能用简单的语言给我说说清楚谢谢
PS.我vista系统不能兼容 vc6.0所以用了visual studio 感觉很复杂不是和我这种人 有没有什么界面简单又100%兼容vista的程序推荐的谢谢?

你想知道的属于于编译头的范畴。如果工程里有很多cpp都包含一样的东西(比如stdio.h和windows.h这样),这样编译每个cpp的时候都得编译一遍这些。预编译头就是只让一个cpp编译这部分重复的东西,同时生成一个预编译头文件,VC里叫".pch",其他cpp都直接使用这个.pch避免不必要的重复编译。

一般默认的工程都是让stdafx.cpp生成stdafx.h的预编译头让其他cpp包含。

C++编译时候那些参数别指望能简单了。

打开stdafx.h,里面就有#include<stdio.h>,stdafx.h是为用来包含其它头文件,如果你要包含几十个头文件(不是不可能)的话,用#include "stdafx.h"然后再stdafx.h里面包含其它文件就方便了,而且易于修改.

你想知道的属于于编译头的范畴。如果工程里有很多cpp都包含一样的东西(比如stdio.h和windows.h这样),这样编译每个cpp的时候都得编译一遍这些。预编译头就是只让一个cpp编译这部分重复的东西,同时生成一个预编译头文件,VC里叫".pch",其他cpp都直接使用这个.pch避免不必要的重复编译。

在visual c++中间建项目的时候自动会生成一个空的stdafx.h的文件,但是在gcc的编译器当中就没有。这个设定和编译器相关。
如果你要将vc的文件移植到gcc编译器中,这个#include "stdafx.h"是一定要去掉的

你想知道的属于于编译头的范畴。如果工程里有很多cpp都包含一样的东西(比如stdio.h和windows.h这样),这样编译每个cpp的时候都得编译一遍这些。预编译头就是只让一个cpp编译这部分重复的东西,同时生成一个预编译头文件,VC里叫".pch",其他cpp都直接使用这个.pch避免不必要的重复编译。

一般默认的工程都是让stdafx.cpp生成stdafx.h的预编译头让其他cpp包含。